/*******************************************************************************
* Project: QSAR(Cute Software Architecture)
*
* Copyright: Copyright(C) 2024 by YuetingBen, All Rights Reserved
*
* File name: CanNmRte.h
*
* Brief: ;
*
* Author: Yueting.Ben
*
* Module: CanNm
*
*******************************************************************************/

#ifndef CANNMRTE_H
#define CANNMRTE_H

/** HEADER FILES **/
#include "ComStackType.h"
#include "ComStackCfg.h"
#include "NmType.h"
#include "CanIfCfg.h"
#include "TmCfg.h"

/** GLOBAL FUNCTION DECLARATION **/
extern Std_ReturnType CanIf_Transmit(
    PduIdType TxPduId,
    const PduInfoType* PduInfoPtr
);

/* NM */
extern void Nm_NetworkMode(
    NetworkHandleType nmNetworkHandle
);

extern void Nm_BusSleepMode (
    NetworkHandleType nmNetworkHandle
);

extern void Nm_PrepareBusSleepMode(
    NetworkHandleType nmNetworkHandle
);

extern void Nm_TxTimeoutException(
    NetworkHandleType nmNetworkHandle
);

extern Std_ReturnType Tm_StartTimer(
    Tm_TimerIdType TimerId,
    uint16 TargetTimer
);

#endif
